home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 4 / Apprentice-Release4.iso / Languages / MPW Oberon 2.1168 / OInterfaces / AppleGuide.mod < prev    next >
Encoding:
Text File  |  1995-08-10  |  9.3 KB  |  300 lines  |  [TEXT/MPS ]

  1. (*
  2.      File:        AppleGuide.mod
  3.  
  4.      Contains:    Apple Guide Interfaces.
  5.  
  6.      Version:    Technology:    System 7.5
  7.                  Package:    Universal Interfaces 2.0 in “MPW Latest” on ETO #17
  8.  
  9.      Copyright:    © 1984-1995 by Apple Computer, Inc.
  10.                  All rights reserved.
  11.  
  12.      Bugs?:        If you find a problem with this file, use the Apple Bug Reporter
  13.                  stack.  Include the file and version information (from above)
  14.                  in the problem description and send to:
  15.                      Internet:    apple.bugs.applelink.apple.com
  16.                      AppleLink:    APPLE.BUGS
  17.  
  18. *)
  19.  
  20. (*$TAGS-*)
  21. (*$CALLING PASCAL*)
  22. MODULE AppleGuide;
  23.  
  24. IMPORT SYSTEM, Types, Memory, Files, AppleEvents;
  25.  
  26. (* $PUSH*)
  27. (* $ALIGN MAC68K*)
  28. (* $LibExport+*)
  29.     
  30. TYPE
  31.     AGRefNum* = Types.UInt32;
  32.  
  33.     AGCoachRefNum* = Types.UInt32;
  34.  
  35.     AGContextRefNum* = Types.UInt32;
  36.  
  37.     AGAppInfo* = RECORD
  38.         eventId*:                AppleEvents.AEEventID;
  39.         refCon*:                    LONGINT;
  40.         contextObj*:                Types.Ptr;                                    (* private system field*)
  41.     END;
  42.  
  43.     AGAppInfoPtr* = POINTER TO AGAppInfo;
  44.     AGAppInfoHdl* = HANDLE TO AGAppInfo (*ΔΔ POINTER TO AGAppInfoPtr*);
  45.  
  46.     CoachReplyProcPtr* = (*ΔΔ Types.ProcPtr;*) PROCEDURE (VAR pRect: Types.Rect; name: Types.Ptr; refCon: LONGINT): Types.OSErr;
  47.     ContextReplyProcPtr* = (*ΔΔ Types.ProcPtr;*) PROCEDURE (pInputData: Types.Ptr; inputDataSize: Memory.Size; VAR ppOutputData: Types.Ptr; VAR pOutputDataSize: Memory.Size; hAppInfo: AGAppInfoHdl): Types.OSErr;
  48.     CoachReplyUPP* = Types.UniversalProcPtr;
  49.     ContextReplyUPP* = Types.UniversalProcPtr;
  50.  
  51. CONST
  52.     uppCoachReplyProcInfo* = $00000FE0; (* PROCEDURE (4 byte param, 4 byte param, 4 byte param): 2 byte result; *)
  53.     uppContextReplyProcInfo* = $0000FFE0; (* PROCEDURE (4 byte param, 4 byte param, 4 byte param, 4 byte param, 4 byte param): 2 byte result; *)
  54.  
  55. PROCEDURE NewCoachReplyProc*(userRoutine: CoachReplyProcPtr): CoachReplyUPP;
  56.     (*$IF NOT GENERATINGCFM *)
  57.     INLINE PASCAL $2E9F;
  58.     (*$END*)
  59.  
  60. PROCEDURE NewContextReplyProc*(userRoutine: ContextReplyProcPtr): ContextReplyUPP;
  61.     (*$IF NOT GENERATINGCFM *)
  62.     INLINE PASCAL $2E9F;
  63.     (*$END*)
  64.  
  65. PROCEDURE CallCoachReplyProc*(VAR pRect: Types.Rect; name: Types.Ptr; refCon: LONGINT; userRoutine: CoachReplyUPP): Types.OSErr;
  66.     (*$IF NOT GENERATINGCFM*)
  67.     INLINE PASCAL $205F, $4E90;
  68.     (*$END*)
  69.  
  70. PROCEDURE CallContextReplyProc*(pInputData: Types.Ptr; inputDataSize: Memory.Size; VAR ppOutputData: Types.Ptr; VAR pOutputDataSize: Memory.Size; hAppInfo: AGAppInfoHdl; userRoutine: ContextReplyUPP): Types.OSErr;
  71.     (*$IF NOT GENERATINGCFM*)
  72.     INLINE PASCAL $205F, $4E90;
  73.     (*$END*)
  74.  
  75. CONST
  76.     gestaltAppleGuidePresent*    = 31;
  77.     gestaltAppleGuideIsDebug*    = 30;
  78.     kAGDefault*                    = 0;
  79.     kAGFrontDatabase*            = 1;
  80.     kAGNoMixin*                    = -1;
  81.  
  82.     kAGViewFullHowdy*            = 1;                            (* Full-size Howdy*)
  83.     kAGViewTopicAreas*            = 2;                            (* Full-size Topic Areas*)
  84.     kAGViewIndex*                = 3;                            (* Full-size Index Terms*)
  85.     kAGViewLookFor*                = 4;                            (* Full-size Look-For (Search)*)
  86.     kAGViewSingleHowdy*            = 5;                            (* Single-list-size Howdy*)
  87.     kAGViewSingleTopics*            = 6;                            (* Single-list-size Topics*)
  88.  
  89.     kAGFileMain*                    = LONG("poco");
  90.     kAGFileMixin*                = LONG("mixn");
  91.  
  92. (* To test against AGGetAvailableDBTypes*)
  93.     kAGDBTypeBitAny*                = $00000001;
  94.     kAGDBTypeBitHelp*            = $00000002;
  95.     kAGDBTypeBitTutorial*        = $00000004;
  96.     kAGDBTypeBitShortcuts*        = $00000008;
  97.     kAGDBTypeBitAbout*            = $00000010;
  98.     kAGDBTypeBitOther*            = $00000080;
  99.  
  100.     
  101. TYPE
  102.     AGStatus* = Types.UInt16;
  103.  
  104. (* Returned by AGGetStatus*)
  105.  
  106. CONST
  107.     kAGIsNotRunning*                = 0;
  108.     kAGIsSleeping*                = 1;
  109.     kAGIsActive*                    = 2;
  110.  
  111.     
  112. TYPE
  113.     AGWindowKind* = Types.UInt16;
  114.  
  115. (* Returned by AGGetFrontWindowKind*)
  116.  
  117. CONST
  118.     kAGNoWindow*                    = 0;
  119.     kAGAccessWindow*                = 1;
  120.     kAGPresentationWindow*        = 2;
  121.  
  122. (* Error Codes*)
  123. (* Not an enum, because other OSErrs are valid.*)
  124.     
  125. TYPE
  126.     AGErr* = Types.SInt16;
  127.  
  128. (* Apple Guide error codes*)
  129.  
  130. CONST
  131. (* -------------------- Apple event reply codes*)
  132.     kAGErrUnknownEvent*            = -2900;
  133.     kAGErrCantStartup*            = -2901;
  134.     kAGErrNoAccWin*                = -2902;
  135.     kAGErrNoPreWin*                = -2903;
  136.     kAGErrNoSequence*            = -2904;
  137.     kAGErrNotOopsSequence*        = -2905;
  138.     kAGErrReserved06*            = -2906;
  139.     kAGErrNoPanel*                = -2907;
  140.     kAGErrContentNotFound*        = -2908;
  141.     kAGErrMissingString*            = -2909;
  142.     kAGErrInfoNotAvail*            = -2910;
  143.     kAGErrEventNotAvailable*        = -2911;
  144.     kAGErrCannotMakeCoach*        = -2912;
  145.     kAGErrSessionIDsNotMatch*    = -2913;
  146.     kAGErrMissingDatabaseSpec*    = -2914;
  147. (* -------------------- Coach's Chalkboard reply codes*)
  148.     kAGErrItemNotFound*            = -2925;
  149.     kAGErrBalloonResourceNotFound* = -2926;
  150.     kAGErrChalkResourceNotFound*    = -2927;
  151.     kAGErrChdvResourceNotFound*    = -2928;
  152.     kAGErrAlreadyShowing*        = -2929;
  153.     kAGErrBalloonResourceSkip*    = -2930;
  154.     kAGErrItemNotVisible*        = -2931;
  155.     kAGErrReserved32*            = -2932;
  156.     kAGErrNotFrontProcess*        = -2933;
  157.     kAGErrMacroResourceNotFound*    = -2934;
  158. (* -------------------- API reply codes*)
  159.     kAGErrAppleGuideNotAvailable* = -2951;
  160.     kAGErrCannotInitCoach*        = -2952;
  161.     kAGErrCannotInitContext*        = -2953;
  162.     kAGErrCannotOpenAliasFile*    = -2954;
  163.     kAGErrNoAliasResource*        = -2955;
  164.     kAGErrDatabaseNotAvailable*    = -2956;
  165.     kAGErrDatabaseNotOpen*        = -2957;
  166.     kAGErrMissingAppInfoHdl*        = -2958;
  167.     kAGErrMissingContextObject*    = -2959;
  168.     kAGErrInvalidRefNum*            = -2960;
  169.     kAGErrDatabaseOpen*            = -2961;
  170.     kAGErrInsufficientMemory*    = -2962;
  171.  
  172. (* Events*)
  173. (* Not an enum because we want to make assignments.*)
  174.     
  175. TYPE
  176.     AGEvent* = Types.UInt32;
  177.  
  178. (* Handy events for AGGeneral.*)
  179.  
  180. CONST
  181. (* Panel actions (Require a presentation window).*)
  182.     kAGEventDoCoach*                = LONG("doco");
  183.     kAGEventDoHuh*                = LONG("dhuh");
  184.     kAGEventGoNext*                = LONG("gonp");
  185.     kAGEventGoPrev*                = LONG("gopp");
  186.     kAGEventHidePanel*            = LONG("pahi");
  187.     kAGEventReturnBack*            = LONG("gobk");
  188.     kAGEventShowPanel*            = LONG("pash");
  189.     kAGEventTogglePanel*            = LONG("patg");
  190.  
  191. (* Functions*)
  192. (* AGClose*)
  193. (* Close the database associated with the AGRefNum.*)
  194.  
  195. PROCEDURE AGClose*(VAR refNum: AGRefNum): AGErr;
  196.     (*$IF NOT GENERATINGCFM*)
  197.     INLINE PASCAL $7011, $AA6E;
  198.     (*$END*)
  199. (* AGGeneral*)
  200. (* Cause various events to happen.*)
  201. PROCEDURE AGGeneral*(refNum: AGRefNum; theEvent: AGEvent): AGErr;
  202.     (*$IF NOT GENERATINGCFM*)
  203.     INLINE PASCAL $700D, $AA6E;
  204.     (*$END*)
  205. (* AGGetAvailableDBTypes*)
  206. (* Return the database types available for this application.*)
  207. PROCEDURE AGGetAvailableDBTypes*(): Types.UInt32;
  208.     (*$IF NOT GENERATINGCFM*)
  209.     INLINE PASCAL $7008, $AA6E;
  210.     (*$END*)
  211. (* AGGetFrontWindowKind*)
  212. (* Return the kind of the front window.*)
  213. PROCEDURE AGGetFrontWindowKind*(refNum: AGRefNum): AGWindowKind;
  214.     (*$IF NOT GENERATINGCFM*)
  215.     INLINE PASCAL $700C, $AA6E;
  216.     (*$END*)
  217. (* AGGetFSSpec*)
  218. (* Return the Files.FSSpec for the AGRefNum.*)
  219. PROCEDURE AGGetFSSpec*(refNum: AGRefNum; VAR fileSpec: Files.FSSpec): AGErr;
  220.     (*$IF NOT GENERATINGCFM*)
  221.     INLINE PASCAL $700F, $AA6E;
  222.     (*$END*)
  223. (* AGGetStatus*)
  224. (* Return the status of Apple Guide.*)
  225. PROCEDURE AGGetStatus*(): AGStatus;
  226.     (*$IF NOT GENERATINGCFM*)
  227.     INLINE PASCAL $7009, $AA6E;
  228.     (*$END*)
  229. (* AGInstallCoachHandler*)
  230. (* Install a Coach object location query handler.*)
  231. PROCEDURE AGInstallCoachHandler*(coachReplyProc: CoachReplyUPP; refCon: LONGINT; VAR resultRefNum: AGCoachRefNum): AGErr;
  232.     (*$IF NOT GENERATINGCFM*)
  233.     INLINE PASCAL $7012, $AA6E;
  234.     (*$END*)
  235. (* AGInstallContextHandler*)
  236. (* Install a context check query handler.*)
  237. PROCEDURE AGInstallContextHandler*(contextReplyProc: ContextReplyUPP; eventID: AppleEvents.AEEventID; refCon: LONGINT; VAR resultRefNum: AGContextRefNum): AGErr;
  238.     (*$IF NOT GENERATINGCFM*)
  239.     INLINE PASCAL $7013, $AA6E;
  240.     (*$END*)
  241. (* AGIsDatabaseOpen*)
  242. (* Return true if the database associated with the AGRefNum is open.*)
  243. PROCEDURE AGIsDatabaseOpen*(refNum: AGRefNum): BOOLEAN;
  244.     (*$IF NOT GENERATINGCFM*)
  245.     INLINE PASCAL $7006, $AA6E;
  246.     (*$END*)
  247. (* AGOpen*)
  248. (* Open a guide database.*)
  249. PROCEDURE AGOpen*(VAR fileSpec: Files.FSSpec; flags: Types.UInt32; mixinControl: Types.Handle; VAR resultRefNum: AGRefNum): AGErr;
  250.     (*$IF NOT GENERATINGCFM*)
  251.     INLINE PASCAL $7001, $AA6E;
  252.     (*$END*)
  253. (* AGOpenWithSearch*)
  254. (* Open a guide database and preset a search string.*)
  255. PROCEDURE AGOpenWithSearch*(VAR fileSpec: Files.FSSpec; flags: Types.UInt32; mixinControl: Types.Handle; searchString: Types.ConstStr255Param; VAR resultRefNum: AGRefNum): AGErr;
  256.     (*$IF NOT GENERATINGCFM*)
  257.     INLINE PASCAL $7002, $AA6E;
  258.     (*$END*)
  259. (* AGOpenWithSequence*)
  260. (* Open a guide database and display a presentation window sequence.*)
  261. PROCEDURE AGOpenWithSequence*(VAR fileSpec: Files.FSSpec; flags: Types.UInt32; mixinControl: Types.Handle; sequenceID: INTEGER; VAR resultRefNum: AGRefNum): AGErr;
  262.     (*$IF NOT GENERATINGCFM*)
  263.     INLINE PASCAL $7004, $AA6E;
  264.     (*$END*)
  265. (* AGOpenWithView*)
  266. (* Open a guide database and override the default view.*)
  267. PROCEDURE AGOpenWithView*(VAR fileSpec: Files.FSSpec; flags: Types.UInt32; mixinControl: Types.Handle; viewNum: INTEGER; VAR resultRefNum: AGRefNum): AGErr;
  268.     (*$IF NOT GENERATINGCFM*)
  269.     INLINE PASCAL $7005, $AA6E;
  270.     (*$END*)
  271. (* AGQuit*)
  272. (* Make Apple Guide quit.*)
  273. PROCEDURE AGQuit*(): AGErr;
  274.     (*$IF NOT GENERATINGCFM*)
  275.     INLINE PASCAL $7010, $AA6E;
  276.     (*$END*)
  277. (* AGRemoveCoachHandler*)
  278. (* Remove the Coach object location query handler.*)
  279. PROCEDURE AGRemoveCoachHandler*(VAR resultRefNum: AGCoachRefNum): AGErr;
  280.     (*$IF NOT GENERATINGCFM*)
  281.     INLINE PASCAL $7014, $AA6E;
  282.     (*$END*)
  283. (* AGRemoveContextHandler*)
  284. (* Remove the context check query handler.*)
  285. PROCEDURE AGRemoveContextHandler*(VAR resultRefNum: AGContextRefNum): AGErr;
  286.     (*$IF NOT GENERATINGCFM*)
  287.     INLINE PASCAL $7015, $AA6E;
  288.     (*$END*)
  289. (* AGStart*)
  290. (* Start up Apple Guide in the background.*)
  291. PROCEDURE AGStart*(): AGErr;
  292.     (*$IF NOT GENERATINGCFM*)
  293.     INLINE PASCAL $700A, $AA6E;
  294.     (*$END*)
  295.  
  296. (* $ALIGN RESET*)
  297. (* $POP*)
  298.  
  299.  END AppleGuide.
  300.